package cn.gqr.mapper;

import cn.gqr.entity.ItemBook;
import cn.gqr.entity.OrdInfo;
import cn.gqr.entity.Order;
import cn.gqr.entity.OrderLine;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface OrderMapper {

    //添加发货地址
    int addShip(Order ord);

    //查询订单头信息(含用户信息)
    List<OrderLine> findOrdInfo(OrderLine orderLine,@Param("ispay")Integer ispay,
            @Param("tstart")String tstart, @Param("tend")String tend,
            @Param("start") int start, @Param("num") int num);

    //总行数
    int ordInfoTotal(OrderLine orderLine,@Param("ispay")Integer ispay,
                     @Param("tstart")String tstart, @Param("tend")String tend,
                     @Param("start") int start, @Param("num") int num);



    //根据订单id,查找该订单对应的订单明细信息(含书本)
    List<ItemBook> findItemInfoByOrdid(int ordid);

    //查找该登录用户的下某一个订单号
    OrdInfo findInfoByOrdid(@Param("userid") int userid,@Param("ordid") int ordid);

    //更新发货地址及电话
    int addAddr(@Param("order")Order order);

    //更新订单付款标识  1已付款，0未付款
    int addPay(@Param("order")Order order);

    //<!--查找该登录用户的所有订单头信息-->
    List<OrderLine> findOrdLines(
            @Param("uid")int uid,@Param("ispay")Integer ispay,
            @Param("tstart")String tstart,@Param("tend")String tend);

    List<OrderLine> findOrdLineByPage(
            @Param("uid")int uid,@Param("ispay")Integer ispay,
            @Param("tstart")String tstart,@Param("tend")String tend,
            @Param("start")int start,@Param("num")int num);

    //总行数
    int findOrdLineByPageToral(@Param("uid")int uid);

    //根据id查询order对象
    Order findByIdOrder(@Param("ordid")int ordid);
}
